#include "GerenciaAudio.h"


GerenciaAudio::GerenciaAudio(void)
{
	audio = irrklang::createIrrKlangDevice();
}


GerenciaAudio::~GerenciaAudio(void)
{
}

void GerenciaAudio::drop()
{
	audio->drop();
}

void GerenciaAudio::RegistraSom(int id, char *nomeArq)
{	
	//quando reistra um som, incia com ele pausado
	Som a;
	a.nomeArq = nomeArq;
	a.sound = audio->play2D(nomeArq, false, true);

	sons.insert(std::pair<int, Som>(id, a));
}

void GerenciaAudio::PlaySom(int id, bool loop)
{
	sons.find(id)->second.sound = audio->play2D(sons.find(id)->second.nomeArq, loop, false,  false, irrklang::ESM_AUTO_DETECT, true);
}

void GerenciaAudio::StopSom(int id)
{
	sons.find(id)->second.sound->stop();
}

irrklang::ISoundEngine *GerenciaAudio::GetSom()
{
	return audio;
}

void GerenciaAudio::SetVolume(int id, float volume)
{
	sons.find(id)->second.sound->setVolume(volume);
}
